package com.qidianit.mes.pojo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

/**
 * @ Description:
 * @ Author:WuJingLei
 * @ Date: 2025/9/24 -15:28
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Task {
    /**
     * 任务编号（主键）
     */
    private Long taskId;

    private String taskCode;

    /**
     * 工单id
     */
    private Long productionOrderId;

    /**
     * 工序id
     */
    private Long processId;

    /**
     * 工艺id
     */
    private Long workflowId;

    /**
     * 任务名称
     */
    private String taskName;

    /**
     * 工作站编号
     */
    private String workstationCode;

    /**
     * 排产数量
     */
    private Integer scheduleQuantity;

    /**
     * 已生产数量（默认0）
     */
    private Integer producedQuantity = 0;

    /**
     * 开始生产时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime startProductionTime;

    /**
     * 生产时长（单位：分钟）
     */
    private Long productionDuration;

    /**
     * 预计完成时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime estimatedCompletionTime;

    /**
     * 删除标记（0：未删除，1：已删除）（默认0）
     */

    private Integer deleteFlag = 0;

    /**
     * 创建时间（默认当前时间）
     */
    private LocalDateTime createTime;

    /**
     * 更新时间（默认当前时间，更新时自动刷新）
     */
    private LocalDateTime updateTime;


}
